﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Financeiro.Model;

namespace Financeiro
{
    public partial class CriarConta : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
			chkContaReceber.Visible = false;
			lblContaReceber.Visible = false;
        }

        protected void chkContaReceber_CheckedChanged(object sender, EventArgs e)
        {
            errAtendimento.Text = "";
            if (chkContaReceber.Checked == true)
            {
                lblAtendimento.Visible = true;
                txtAtendimento.Visible = true;
                errAtendimento.Visible = true;
            }
            else
            {
                lblAtendimento.Visible = false;
                txtAtendimento.Text = "";
                txtAtendimento.Visible = false;
                errAtendimento.Visible = false;
            }

        }

        protected void btnOK_Click(object sender, EventArgs e)
        {
            double valor = 0;
            DateTime data_vencimento = new DateTime();
            int id_atendimento = 0;
            string descricao = txtDescricao.Text;
            int contem_erro = 0;
            // Validação dos campos.
            try
            {
                valor = Convert.ToDouble(txtValor.Text);
                if (valor <= 0)
                {
                    contem_erro = 1;
                    errValor.Text = "Valor inválido";
                }
                else
                {
                    errValor.Text = "";
                }
            }
            catch
            {
                contem_erro = 1;
                errValor.Text = "Valor inválido";
            }
            try
            {
                data_vencimento = Convert.ToDateTime(txtDataVencimento.Text);
                DateTime hoje = DateTime.Now;
                if (DateTime.Compare(hoje, data_vencimento) >= 0)
                {
                    contem_erro = 1;
                    errDataVencimento.Text = "Data anterior à de hoje";
                }
                else
                {
                    errDataVencimento.Text = "";
                }
            }
            catch
            {
                contem_erro = 1;
                errDataVencimento.Text = "Data inválida";
            }
            if (chkContaReceber.Checked == true)
            {
                try
                {
                    id_atendimento = Convert.ToInt32(txtAtendimento.Text);
                    errAtendimento.Text = "";
                }
                catch
                {
                    contem_erro = 1;
                    errAtendimento.Text = "ID inválido";
                }
            }
            if (contem_erro == 0)
            {
                ContasModel nova_conta = new ContasModel(valor, descricao, DateTime.Now, data_vencimento, 0);
                nova_conta.createConta(id_atendimento);
                Response.Redirect("/Contas.aspx");
            }
        }

        protected void btnCancelar_Click(object sender, EventArgs e)
        {
            Response.Redirect("/Contas.aspx");
        }
    }
}